<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>我学计算机的四年，共勉！ | 鱼皮的编程宝典</title>
    <meta name="generator" content="VuePress 1.9.10">
    <link rel="icon" href="/favicon.ico">
    <script>
        var _hmt = _hmt || [];
        (function() {
          var hm = document.createElement("script");
          hm.src = "https://hm.baidu.com/hm.js?2675818a983a3131404cee835018f016";
          var s = document.getElementsByTagName("script")[0]; 
          s.parentNode.insertBefore(hm, s);
        })();
      </script>
    <meta name="description" content="贴心的编程学习路线，全面的编程知识百科">
    <meta property="article:modified_time" content="2023-11-11T12:17:47.000Z">
    <meta property="og:site_name" content="鱼皮的编程宝典">
    <meta property="og:title" content="我学计算机的四年，共勉！">
    <meta property="og:type" content="article">
    <meta property="og:url" content="https://codefather.cn/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/">
    <meta name="twitter:title" content="我学计算机的四年，共勉！">
    <meta name="twitter:url" content="https://codefather.cn/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/">
    <meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:label1" content="Written by">
    <meta name="twitter:label2" content="Filed under">
    <meta name="twitter:data2" content="程序员, 编程, 计算机">
    <meta property="article:tag" content="程序员">
    <meta name="keywords" content="程序员鱼皮, 编程学习路线, 编程知识百科, Java, 编程导航, 前端, 开发, 编程分享, 项目, IT, 求职, 面经">
    
    <link rel="preload" href="/assets/css/0.styles.40c15e22.css" as="style"><link rel="preload" href="/assets/js/app.12ab4756.js" as="script"><link rel="preload" href="/assets/js/2.fd06b53e.js" as="script"><link rel="preload" href="/assets/js/490.3fd65d85.js" as="script"><link rel="prefetch" href="/assets/js/1.17ea1209.js"><link rel="prefetch" href="/assets/js/10.d9532d8f.js"><link rel="prefetch" href="/assets/js/100.064ea126.js"><link rel="prefetch" href="/assets/js/101.d64c5b33.js"><link rel="prefetch" href="/assets/js/102.5e29a62c.js"><link rel="prefetch" href="/assets/js/103.59ad6cd7.js"><link rel="prefetch" href="/assets/js/104.ae4763e8.js"><link rel="prefetch" href="/assets/js/105.2a9124be.js"><link rel="prefetch" href="/assets/js/106.529bca07.js"><link rel="prefetch" href="/assets/js/107.c8671a0d.js"><link rel="prefetch" href="/assets/js/108.55c93c64.js"><link rel="prefetch" href="/assets/js/109.7d1efa54.js"><link rel="prefetch" href="/assets/js/11.2f89b5eb.js"><link rel="prefetch" href="/assets/js/110.0caecbf5.js"><link rel="prefetch" href="/assets/js/111.a2aeae49.js"><link rel="prefetch" href="/assets/js/112.eb7ceda5.js"><link rel="prefetch" href="/assets/js/113.f304408d.js"><link rel="prefetch" href="/assets/js/114.988c637f.js"><link rel="prefetch" href="/assets/js/115.bfdeed31.js"><link rel="prefetch" href="/assets/js/116.a47b8c53.js"><link rel="prefetch" href="/assets/js/117.2e1e8250.js"><link rel="prefetch" href="/assets/js/118.758ce408.js"><link rel="prefetch" href="/assets/js/119.73d9e688.js"><link rel="prefetch" href="/assets/js/12.53aaa509.js"><link rel="prefetch" href="/assets/js/120.202a8b2e.js"><link rel="prefetch" href="/assets/js/121.ca91d59a.js"><link rel="prefetch" href="/assets/js/122.8804c0dd.js"><link rel="prefetch" href="/assets/js/123.ceada225.js"><link rel="prefetch" href="/assets/js/124.4b2718b7.js"><link rel="prefetch" href="/assets/js/125.72134235.js"><link rel="prefetch" href="/assets/js/126.167b162c.js"><link rel="prefetch" href="/assets/js/127.f8139c17.js"><link rel="prefetch" href="/assets/js/128.da64a377.js"><link rel="prefetch" href="/assets/js/129.c07963b1.js"><link rel="prefetch" href="/assets/js/13.52940164.js"><link rel="prefetch" href="/assets/js/130.f66fc8bb.js"><link rel="prefetch" href="/assets/js/131.a913c7dd.js"><link rel="prefetch" href="/assets/js/132.ea648654.js"><link rel="prefetch" href="/assets/js/133.074ca70e.js"><link rel="prefetch" href="/assets/js/134.dc79ddd8.js"><link rel="prefetch" href="/assets/js/135.c4516208.js"><link rel="prefetch" href="/assets/js/136.2546baf7.js"><link rel="prefetch" href="/assets/js/137.56454fc6.js"><link rel="prefetch" href="/assets/js/138.bdb002bf.js"><link rel="prefetch" href="/assets/js/139.40a2f9b5.js"><link rel="prefetch" href="/assets/js/14.ade1e74d.js"><link rel="prefetch" href="/assets/js/140.06b20427.js"><link rel="prefetch" href="/assets/js/141.8dd992e3.js"><link rel="prefetch" href="/assets/js/142.d9305485.js"><link rel="prefetch" href="/assets/js/143.41bf907e.js"><link rel="prefetch" href="/assets/js/144.c138960c.js"><link rel="prefetch" href="/assets/js/145.fc5b38c8.js"><link rel="prefetch" href="/assets/js/146.c9166b70.js"><link rel="prefetch" href="/assets/js/147.c31d8a01.js"><link rel="prefetch" href="/assets/js/148.5c0534ca.js"><link rel="prefetch" href="/assets/js/149.d2355ea2.js"><link rel="prefetch" href="/assets/js/15.970a8ca5.js"><link rel="prefetch" href="/assets/js/150.c1644898.js"><link rel="prefetch" href="/assets/js/151.b6e4adf0.js"><link rel="prefetch" href="/assets/js/152.7a5071aa.js"><link rel="prefetch" href="/assets/js/153.31abbc68.js"><link rel="prefetch" href="/assets/js/154.9c6bb079.js"><link rel="prefetch" href="/assets/js/155.e5506a40.js"><link rel="prefetch" href="/assets/js/156.992dab50.js"><link rel="prefetch" href="/assets/js/157.12a6ee84.js"><link rel="prefetch" href="/assets/js/158.84dc1045.js"><link rel="prefetch" href="/assets/js/159.fd2022b1.js"><link rel="prefetch" href="/assets/js/16.ff971500.js"><link rel="prefetch" href="/assets/js/160.8d8889cd.js"><link rel="prefetch" href="/assets/js/161.31797def.js"><link rel="prefetch" href="/assets/js/162.bfae7a75.js"><link rel="prefetch" href="/assets/js/163.e5e8094d.js"><link rel="prefetch" href="/assets/js/164.870f212c.js"><link rel="prefetch" href="/assets/js/165.8da20a31.js"><link rel="prefetch" href="/assets/js/166.950a187d.js"><link rel="prefetch" href="/assets/js/167.fd042c52.js"><link rel="prefetch" href="/assets/js/168.7d9f058d.js"><link rel="prefetch" href="/assets/js/169.205df80e.js"><link rel="prefetch" href="/assets/js/17.4b045b26.js"><link rel="prefetch" href="/assets/js/170.270108a3.js"><link rel="prefetch" href="/assets/js/171.9f03d27d.js"><link rel="prefetch" href="/assets/js/172.1882bac7.js"><link rel="prefetch" href="/assets/js/173.fc1fe7d4.js"><link rel="prefetch" href="/assets/js/174.d77c927b.js"><link rel="prefetch" href="/assets/js/175.019b9e83.js"><link rel="prefetch" href="/assets/js/176.5ce31bd8.js"><link rel="prefetch" href="/assets/js/177.9a2006f2.js"><link rel="prefetch" href="/assets/js/178.88265ac1.js"><link rel="prefetch" href="/assets/js/179.3205ce07.js"><link rel="prefetch" href="/assets/js/18.1cdd0514.js"><link rel="prefetch" href="/assets/js/180.2ff51f44.js"><link rel="prefetch" href="/assets/js/181.f792ce97.js"><link rel="prefetch" href="/assets/js/182.103328e1.js"><link rel="prefetch" href="/assets/js/183.40fde303.js"><link rel="prefetch" href="/assets/js/184.1f36ac78.js"><link rel="prefetch" href="/assets/js/185.cf3b1c00.js"><link rel="prefetch" href="/assets/js/186.f7981399.js"><link rel="prefetch" href="/assets/js/187.20fe296d.js"><link rel="prefetch" href="/assets/js/188.7b004fea.js"><link rel="prefetch" href="/assets/js/189.599ca2d9.js"><link rel="prefetch" href="/assets/js/19.5740e4d6.js"><link rel="prefetch" href="/assets/js/190.14087c07.js"><link rel="prefetch" href="/assets/js/191.b0f73f6d.js"><link rel="prefetch" href="/assets/js/192.9d171669.js"><link rel="prefetch" href="/assets/js/193.00975585.js"><link rel="prefetch" href="/assets/js/194.2c7c43b4.js"><link rel="prefetch" href="/assets/js/195.ff126254.js"><link rel="prefetch" href="/assets/js/196.6546ae1c.js"><link rel="prefetch" href="/assets/js/197.eedb67bb.js"><link rel="prefetch" href="/assets/js/198.acdcc22c.js"><link rel="prefetch" href="/assets/js/199.7993a6b2.js"><link rel="prefetch" href="/assets/js/20.8885a4fa.js"><link rel="prefetch" href="/assets/js/200.52f08765.js"><link rel="prefetch" href="/assets/js/201.b85ab10b.js"><link rel="prefetch" href="/assets/js/202.ccec1c85.js"><link rel="prefetch" href="/assets/js/203.3f50a6ed.js"><link rel="prefetch" href="/assets/js/204.f28b803b.js"><link rel="prefetch" href="/assets/js/205.c51c53fd.js"><link rel="prefetch" href="/assets/js/206.ba0aa8f6.js"><link rel="prefetch" href="/assets/js/207.0dce311a.js"><link rel="prefetch" href="/assets/js/208.0ea629a6.js"><link rel="prefetch" href="/assets/js/209.f48c3e71.js"><link rel="prefetch" href="/assets/js/21.0bb62db4.js"><link rel="prefetch" href="/assets/js/210.689db8f2.js"><link rel="prefetch" href="/assets/js/211.72bc0f1f.js"><link rel="prefetch" href="/assets/js/212.456135bd.js"><link rel="prefetch" href="/assets/js/213.d0ea50fc.js"><link rel="prefetch" href="/assets/js/214.1400da91.js"><link rel="prefetch" href="/assets/js/215.aeef3e5d.js"><link rel="prefetch" href="/assets/js/216.a60215af.js"><link rel="prefetch" href="/assets/js/217.d6cd8b69.js"><link rel="prefetch" href="/assets/js/218.1bd500fc.js"><link rel="prefetch" href="/assets/js/219.20faf611.js"><link rel="prefetch" href="/assets/js/22.3e8347a6.js"><link rel="prefetch" href="/assets/js/220.6714179b.js"><link rel="prefetch" href="/assets/js/221.fb5b643d.js"><link rel="prefetch" href="/assets/js/222.d96272e5.js"><link rel="prefetch" href="/assets/js/223.4cb7dc3d.js"><link rel="prefetch" href="/assets/js/224.500d94cc.js"><link rel="prefetch" href="/assets/js/225.d006c34e.js"><link rel="prefetch" href="/assets/js/226.73612150.js"><link rel="prefetch" href="/assets/js/227.b02db9d1.js"><link rel="prefetch" href="/assets/js/228.aad43ff2.js"><link rel="prefetch" href="/assets/js/229.65340802.js"><link rel="prefetch" href="/assets/js/23.ceb5a5ff.js"><link rel="prefetch" href="/assets/js/230.97cab104.js"><link rel="prefetch" href="/assets/js/231.8415349a.js"><link rel="prefetch" href="/assets/js/232.db6d2697.js"><link rel="prefetch" href="/assets/js/233.723d05b1.js"><link rel="prefetch" href="/assets/js/234.26ed5e94.js"><link rel="prefetch" href="/assets/js/235.a586122b.js"><link rel="prefetch" href="/assets/js/236.f802bda8.js"><link rel="prefetch" href="/assets/js/237.cc8767ad.js"><link rel="prefetch" href="/assets/js/238.6485459e.js"><link rel="prefetch" href="/assets/js/239.9fbf3a55.js"><link rel="prefetch" href="/assets/js/24.07267ac6.js"><link rel="prefetch" href="/assets/js/240.1188f244.js"><link rel="prefetch" href="/assets/js/241.cbfb154d.js"><link rel="prefetch" href="/assets/js/242.352cea5a.js"><link rel="prefetch" href="/assets/js/243.07947e1c.js"><link rel="prefetch" href="/assets/js/244.f5b26fa9.js"><link rel="prefetch" href="/assets/js/245.c6030e32.js"><link rel="prefetch" href="/assets/js/246.d3fe99f7.js"><link rel="prefetch" href="/assets/js/247.185ae95d.js"><link rel="prefetch" href="/assets/js/248.a5f1548c.js"><link rel="prefetch" href="/assets/js/249.19691113.js"><link rel="prefetch" href="/assets/js/25.15e1f641.js"><link rel="prefetch" href="/assets/js/250.72fa1d33.js"><link rel="prefetch" href="/assets/js/251.bedd56f7.js"><link rel="prefetch" href="/assets/js/252.32bbcc8b.js"><link rel="prefetch" href="/assets/js/253.b59e5846.js"><link rel="prefetch" href="/assets/js/254.c0e37e1a.js"><link rel="prefetch" href="/assets/js/255.850da3cc.js"><link rel="prefetch" href="/assets/js/256.952d9817.js"><link rel="prefetch" href="/assets/js/257.88667bb8.js"><link rel="prefetch" href="/assets/js/258.c5873c28.js"><link rel="prefetch" href="/assets/js/259.6ae1dcbc.js"><link rel="prefetch" href="/assets/js/26.35b2bbdc.js"><link rel="prefetch" href="/assets/js/260.cb940cc3.js"><link rel="prefetch" href="/assets/js/261.0686c3e9.js"><link rel="prefetch" href="/assets/js/262.d0719839.js"><link rel="prefetch" href="/assets/js/263.ae83ebc1.js"><link rel="prefetch" href="/assets/js/264.209ad8a3.js"><link rel="prefetch" href="/assets/js/265.be8d1ee8.js"><link rel="prefetch" href="/assets/js/266.c51bceaa.js"><link rel="prefetch" href="/assets/js/267.fe8af48a.js"><link rel="prefetch" href="/assets/js/268.e18ed861.js"><link rel="prefetch" href="/assets/js/269.7126031e.js"><link rel="prefetch" href="/assets/js/27.270fcb06.js"><link rel="prefetch" href="/assets/js/270.89ead106.js"><link rel="prefetch" href="/assets/js/271.0643d07a.js"><link rel="prefetch" href="/assets/js/272.32a8e4b0.js"><link rel="prefetch" href="/assets/js/273.9881da47.js"><link rel="prefetch" href="/assets/js/274.2de022ea.js"><link rel="prefetch" href="/assets/js/275.d9a4fe99.js"><link rel="prefetch" href="/assets/js/276.d33de2e9.js"><link rel="prefetch" href="/assets/js/277.1ec367ab.js"><link rel="prefetch" href="/assets/js/278.66ab7c11.js"><link rel="prefetch" href="/assets/js/279.ff51cd15.js"><link rel="prefetch" href="/assets/js/28.ef3f6db2.js"><link rel="prefetch" href="/assets/js/280.ef45ed5f.js"><link rel="prefetch" href="/assets/js/281.87f26b81.js"><link rel="prefetch" href="/assets/js/282.c8ef594b.js"><link rel="prefetch" href="/assets/js/283.15643091.js"><link rel="prefetch" href="/assets/js/284.c4f25b2e.js"><link rel="prefetch" href="/assets/js/285.2d16e4b6.js"><link rel="prefetch" href="/assets/js/286.44eba266.js"><link rel="prefetch" href="/assets/js/287.7613e62f.js"><link rel="prefetch" href="/assets/js/288.b9546d55.js"><link rel="prefetch" href="/assets/js/289.125f85d8.js"><link rel="prefetch" href="/assets/js/29.177558be.js"><link rel="prefetch" href="/assets/js/290.db375797.js"><link rel="prefetch" href="/assets/js/291.90946626.js"><link rel="prefetch" href="/assets/js/292.a4524678.js"><link rel="prefetch" href="/assets/js/293.3ed9b083.js"><link rel="prefetch" href="/assets/js/294.d6c14116.js"><link rel="prefetch" href="/assets/js/295.2b485032.js"><link rel="prefetch" href="/assets/js/296.29d9aa0f.js"><link rel="prefetch" href="/assets/js/297.bfd72435.js"><link rel="prefetch" href="/assets/js/298.fc056989.js"><link rel="prefetch" href="/assets/js/299.0a3f258e.js"><link rel="prefetch" href="/assets/js/3.4dc033c7.js"><link rel="prefetch" href="/assets/js/30.248a229d.js"><link rel="prefetch" href="/assets/js/300.d064d776.js"><link rel="prefetch" href="/assets/js/301.d95b9fc0.js"><link rel="prefetch" href="/assets/js/302.1afa637a.js"><link rel="prefetch" href="/assets/js/303.231beaa8.js"><link rel="prefetch" href="/assets/js/304.05df35d9.js"><link rel="prefetch" href="/assets/js/305.f2d83cf9.js"><link rel="prefetch" href="/assets/js/306.d54f5e5e.js"><link rel="prefetch" href="/assets/js/307.d5df9000.js"><link rel="prefetch" href="/assets/js/308.ef2f52b3.js"><link rel="prefetch" href="/assets/js/309.d1f13319.js"><link rel="prefetch" href="/assets/js/31.32a62b91.js"><link rel="prefetch" href="/assets/js/310.30b84be3.js"><link rel="prefetch" href="/assets/js/311.d79e3145.js"><link rel="prefetch" href="/assets/js/312.58e24f19.js"><link rel="prefetch" href="/assets/js/313.9809a122.js"><link rel="prefetch" href="/assets/js/314.e92e41b1.js"><link rel="prefetch" href="/assets/js/315.8c2fc1d4.js"><link rel="prefetch" href="/assets/js/316.a0904343.js"><link rel="prefetch" href="/assets/js/317.18e42b54.js"><link rel="prefetch" href="/assets/js/318.6b051d27.js"><link rel="prefetch" href="/assets/js/319.513b0197.js"><link rel="prefetch" href="/assets/js/32.23b75afc.js"><link rel="prefetch" href="/assets/js/320.ae91bc36.js"><link rel="prefetch" href="/assets/js/321.a194efea.js"><link rel="prefetch" href="/assets/js/322.8273020e.js"><link rel="prefetch" href="/assets/js/323.d332e08f.js"><link rel="prefetch" href="/assets/js/324.ed867b64.js"><link rel="prefetch" href="/assets/js/325.c43ccf9a.js"><link rel="prefetch" href="/assets/js/326.9497d879.js"><link rel="prefetch" href="/assets/js/327.7f095e40.js"><link rel="prefetch" href="/assets/js/328.cb5c5847.js"><link rel="prefetch" href="/assets/js/329.d36b59f3.js"><link rel="prefetch" href="/assets/js/33.b258b779.js"><link rel="prefetch" href="/assets/js/330.b1a092b9.js"><link rel="prefetch" href="/assets/js/331.ff86566f.js"><link rel="prefetch" href="/assets/js/332.0daafa9f.js"><link rel="prefetch" href="/assets/js/333.b7e50524.js"><link rel="prefetch" href="/assets/js/334.7dcf9f0b.js"><link rel="prefetch" href="/assets/js/335.862c410a.js"><link rel="prefetch" href="/assets/js/336.c6384990.js"><link rel="prefetch" href="/assets/js/337.ab9d5e52.js"><link rel="prefetch" href="/assets/js/338.598ae59e.js"><link rel="prefetch" href="/assets/js/339.9b810ff8.js"><link rel="prefetch" href="/assets/js/34.3bd60f1f.js"><link rel="prefetch" href="/assets/js/340.5609a53c.js"><link rel="prefetch" href="/assets/js/341.969d335a.js"><link rel="prefetch" href="/assets/js/342.43f85dba.js"><link rel="prefetch" href="/assets/js/343.47280ef9.js"><link rel="prefetch" href="/assets/js/344.346ae5fc.js"><link rel="prefetch" href="/assets/js/345.32166361.js"><link rel="prefetch" href="/assets/js/346.86ff128b.js"><link rel="prefetch" href="/assets/js/347.3c5421fe.js"><link rel="prefetch" href="/assets/js/348.95910300.js"><link rel="prefetch" href="/assets/js/349.004158d8.js"><link rel="prefetch" href="/assets/js/35.18e8f66a.js"><link rel="prefetch" href="/assets/js/350.e10b195b.js"><link rel="prefetch" href="/assets/js/351.12f89875.js"><link rel="prefetch" href="/assets/js/352.83957394.js"><link rel="prefetch" href="/assets/js/353.475971b9.js"><link rel="prefetch" href="/assets/js/354.8af7b26b.js"><link rel="prefetch" href="/assets/js/355.85925e24.js"><link rel="prefetch" href="/assets/js/356.1d77cf9c.js"><link rel="prefetch" href="/assets/js/357.b467d481.js"><link rel="prefetch" href="/assets/js/358.ac96f32d.js"><link rel="prefetch" href="/assets/js/359.e048bd10.js"><link rel="prefetch" href="/assets/js/36.a7ae257c.js"><link rel="prefetch" href="/assets/js/360.e9b45545.js"><link rel="prefetch" href="/assets/js/361.ad1bb45b.js"><link rel="prefetch" href="/assets/js/362.4e24a30b.js"><link rel="prefetch" href="/assets/js/363.64f7dad5.js"><link rel="prefetch" href="/assets/js/364.d9e3ebc2.js"><link rel="prefetch" href="/assets/js/365.330e3086.js"><link rel="prefetch" href="/assets/js/366.a6c0afb3.js"><link rel="prefetch" href="/assets/js/367.ffcefa40.js"><link rel="prefetch" href="/assets/js/368.664c8e4d.js"><link rel="prefetch" href="/assets/js/369.67da2dd2.js"><link rel="prefetch" href="/assets/js/37.d709f9a9.js"><link rel="prefetch" href="/assets/js/370.b1791970.js"><link rel="prefetch" href="/assets/js/371.743a461a.js"><link rel="prefetch" href="/assets/js/372.7703ef1b.js"><link rel="prefetch" href="/assets/js/373.17de31f6.js"><link rel="prefetch" href="/assets/js/374.e508be9e.js"><link rel="prefetch" href="/assets/js/375.6e2e9fe3.js"><link rel="prefetch" href="/assets/js/376.8ca3511a.js"><link rel="prefetch" href="/assets/js/377.bfcee39c.js"><link rel="prefetch" href="/assets/js/378.21852b78.js"><link rel="prefetch" href="/assets/js/379.9649c307.js"><link rel="prefetch" href="/assets/js/38.68ca920e.js"><link rel="prefetch" href="/assets/js/380.dadb4418.js"><link rel="prefetch" href="/assets/js/381.a03c993d.js"><link rel="prefetch" href="/assets/js/382.bb7c22c1.js"><link rel="prefetch" href="/assets/js/383.bd68b2e5.js"><link rel="prefetch" href="/assets/js/384.f6dc7457.js"><link rel="prefetch" href="/assets/js/385.14287a91.js"><link rel="prefetch" href="/assets/js/386.a6284ac2.js"><link rel="prefetch" href="/assets/js/387.c51f147a.js"><link rel="prefetch" href="/assets/js/388.06d9651e.js"><link rel="prefetch" href="/assets/js/389.2d85d927.js"><link rel="prefetch" href="/assets/js/39.de850db9.js"><link rel="prefetch" href="/assets/js/390.2397b3e0.js"><link rel="prefetch" href="/assets/js/391.8413aaaf.js"><link rel="prefetch" href="/assets/js/392.00eecaa4.js"><link rel="prefetch" href="/assets/js/393.351dd3fd.js"><link rel="prefetch" href="/assets/js/394.d2cc4a70.js"><link rel="prefetch" href="/assets/js/395.abee64bf.js"><link rel="prefetch" href="/assets/js/396.bc265e6a.js"><link rel="prefetch" href="/assets/js/397.e4a96944.js"><link rel="prefetch" href="/assets/js/398.f0d26b29.js"><link rel="prefetch" href="/assets/js/399.e77c3ddc.js"><link rel="prefetch" href="/assets/js/4.2f502b73.js"><link rel="prefetch" href="/assets/js/40.91635261.js"><link rel="prefetch" href="/assets/js/400.c7eac401.js"><link rel="prefetch" href="/assets/js/401.06092d16.js"><link rel="prefetch" href="/assets/js/402.4e08e496.js"><link rel="prefetch" href="/assets/js/403.deba4c77.js"><link rel="prefetch" href="/assets/js/404.9100e4df.js"><link rel="prefetch" href="/assets/js/405.e9f451e2.js"><link rel="prefetch" href="/assets/js/406.a0da4aa4.js"><link rel="prefetch" href="/assets/js/407.58b2b123.js"><link rel="prefetch" href="/assets/js/408.eb2cde2d.js"><link rel="prefetch" href="/assets/js/409.9041f749.js"><link rel="prefetch" href="/assets/js/41.169a3cfc.js"><link rel="prefetch" href="/assets/js/410.c12f3710.js"><link rel="prefetch" href="/assets/js/411.452cda45.js"><link rel="prefetch" href="/assets/js/412.8691317a.js"><link rel="prefetch" href="/assets/js/413.25a68f21.js"><link rel="prefetch" href="/assets/js/414.7a9699d8.js"><link rel="prefetch" href="/assets/js/415.6e8cdaff.js"><link rel="prefetch" href="/assets/js/416.e8a86529.js"><link rel="prefetch" href="/assets/js/417.28330bde.js"><link rel="prefetch" href="/assets/js/418.2fed8e17.js"><link rel="prefetch" href="/assets/js/419.773032f4.js"><link rel="prefetch" href="/assets/js/42.e17cd061.js"><link rel="prefetch" href="/assets/js/420.56681228.js"><link rel="prefetch" href="/assets/js/421.0d170e13.js"><link rel="prefetch" href="/assets/js/422.fc8c2a11.js"><link rel="prefetch" href="/assets/js/423.e34ea6a6.js"><link rel="prefetch" href="/assets/js/424.20fe8748.js"><link rel="prefetch" href="/assets/js/425.f001b7cd.js"><link rel="prefetch" href="/assets/js/426.a91230ef.js"><link rel="prefetch" href="/assets/js/427.c6c9fe8d.js"><link rel="prefetch" href="/assets/js/428.9d4f5e41.js"><link rel="prefetch" href="/assets/js/429.c81cfd3f.js"><link rel="prefetch" href="/assets/js/43.f88aa667.js"><link rel="prefetch" href="/assets/js/430.eb61372f.js"><link rel="prefetch" href="/assets/js/431.4a25365a.js"><link rel="prefetch" href="/assets/js/432.42fc1bbe.js"><link rel="prefetch" href="/assets/js/433.8e9ac9f0.js"><link rel="prefetch" href="/assets/js/434.fdd0b160.js"><link rel="prefetch" href="/assets/js/435.d6cbac31.js"><link rel="prefetch" href="/assets/js/436.17750ba2.js"><link rel="prefetch" href="/assets/js/437.a1468099.js"><link rel="prefetch" href="/assets/js/438.ac6a45c2.js"><link rel="prefetch" href="/assets/js/439.242ae27a.js"><link rel="prefetch" href="/assets/js/44.3f36e228.js"><link rel="prefetch" href="/assets/js/440.b80b520c.js"><link rel="prefetch" href="/assets/js/441.e51a4bbb.js"><link rel="prefetch" href="/assets/js/442.ab0b3eda.js"><link rel="prefetch" href="/assets/js/443.47e44250.js"><link rel="prefetch" href="/assets/js/444.54c3b425.js"><link rel="prefetch" href="/assets/js/445.e006c12e.js"><link rel="prefetch" href="/assets/js/446.f2b79730.js"><link rel="prefetch" href="/assets/js/447.2509a397.js"><link rel="prefetch" href="/assets/js/448.b7d69dfc.js"><link rel="prefetch" href="/assets/js/449.8a575d9b.js"><link rel="prefetch" href="/assets/js/45.be1455b1.js"><link rel="prefetch" href="/assets/js/450.ad421aeb.js"><link rel="prefetch" href="/assets/js/451.f09912ae.js"><link rel="prefetch" href="/assets/js/452.f528c4ce.js"><link rel="prefetch" href="/assets/js/453.fc4dc0f9.js"><link rel="prefetch" href="/assets/js/454.733c315c.js"><link rel="prefetch" href="/assets/js/455.44fe35b1.js"><link rel="prefetch" href="/assets/js/456.7f650035.js"><link rel="prefetch" href="/assets/js/457.77ebc183.js"><link rel="prefetch" href="/assets/js/458.133078f4.js"><link rel="prefetch" href="/assets/js/459.33728b5e.js"><link rel="prefetch" href="/assets/js/46.5ad74cb5.js"><link rel="prefetch" href="/assets/js/460.6946f564.js"><link rel="prefetch" href="/assets/js/461.6f906c5c.js"><link rel="prefetch" href="/assets/js/462.26eca27e.js"><link rel="prefetch" href="/assets/js/463.e02e5f65.js"><link rel="prefetch" href="/assets/js/464.0df25c63.js"><link rel="prefetch" href="/assets/js/465.80cd249e.js"><link rel="prefetch" href="/assets/js/466.a0921e86.js"><link rel="prefetch" href="/assets/js/467.1bec2b47.js"><link rel="prefetch" href="/assets/js/468.b6fa37c1.js"><link rel="prefetch" href="/assets/js/469.a1d2487e.js"><link rel="prefetch" href="/assets/js/47.03df5d0a.js"><link rel="prefetch" href="/assets/js/470.36a4b9c8.js"><link rel="prefetch" href="/assets/js/471.28895273.js"><link rel="prefetch" href="/assets/js/472.b9fe392f.js"><link rel="prefetch" href="/assets/js/473.a2835d9c.js"><link rel="prefetch" href="/assets/js/474.cd57b37d.js"><link rel="prefetch" href="/assets/js/475.8d5a9792.js"><link rel="prefetch" href="/assets/js/476.f7f3781c.js"><link rel="prefetch" href="/assets/js/477.9b710b04.js"><link rel="prefetch" href="/assets/js/478.46d66687.js"><link rel="prefetch" href="/assets/js/479.e7444705.js"><link rel="prefetch" href="/assets/js/48.48f286ba.js"><link rel="prefetch" href="/assets/js/480.da2b750a.js"><link rel="prefetch" href="/assets/js/481.838a8e04.js"><link rel="prefetch" href="/assets/js/482.02bf8041.js"><link rel="prefetch" href="/assets/js/483.bb29ef2f.js"><link rel="prefetch" href="/assets/js/484.aebb68bd.js"><link rel="prefetch" href="/assets/js/485.a66ab41b.js"><link rel="prefetch" href="/assets/js/486.8df516fb.js"><link rel="prefetch" href="/assets/js/487.86d28130.js"><link rel="prefetch" href="/assets/js/488.0863da70.js"><link rel="prefetch" href="/assets/js/489.5d4d9e88.js"><link rel="prefetch" href="/assets/js/49.1ca52d11.js"><link rel="prefetch" href="/assets/js/491.ae3a2f87.js"><link rel="prefetch" href="/assets/js/492.6f54679b.js"><link rel="prefetch" href="/assets/js/493.a594b1f4.js"><link rel="prefetch" href="/assets/js/494.4f03fae1.js"><link rel="prefetch" href="/assets/js/495.ae50b66b.js"><link rel="prefetch" href="/assets/js/496.bc92d835.js"><link rel="prefetch" href="/assets/js/497.eac65251.js"><link rel="prefetch" href="/assets/js/498.1d726726.js"><link rel="prefetch" href="/assets/js/499.01e4f7d1.js"><link rel="prefetch" href="/assets/js/5.7b1f056c.js"><link rel="prefetch" href="/assets/js/50.73732fe2.js"><link rel="prefetch" href="/assets/js/500.062ade4e.js"><link rel="prefetch" href="/assets/js/501.e6a711dc.js"><link rel="prefetch" href="/assets/js/502.c79e28e2.js"><link rel="prefetch" href="/assets/js/503.bf97bce9.js"><link rel="prefetch" href="/assets/js/504.b2784ef0.js"><link rel="prefetch" href="/assets/js/505.0767ba54.js"><link rel="prefetch" href="/assets/js/506.8ae14637.js"><link rel="prefetch" href="/assets/js/507.003e2349.js"><link rel="prefetch" href="/assets/js/508.ecb5e6bd.js"><link rel="prefetch" href="/assets/js/509.b644f44a.js"><link rel="prefetch" href="/assets/js/51.bed7cf61.js"><link rel="prefetch" href="/assets/js/510.b660946f.js"><link rel="prefetch" href="/assets/js/511.cb186c8f.js"><link rel="prefetch" href="/assets/js/512.d176170f.js"><link rel="prefetch" href="/assets/js/513.18a1afa5.js"><link rel="prefetch" href="/assets/js/514.4a33e931.js"><link rel="prefetch" href="/assets/js/515.8496bd4d.js"><link rel="prefetch" href="/assets/js/516.529b9476.js"><link rel="prefetch" href="/assets/js/517.289738f1.js"><link rel="prefetch" href="/assets/js/518.eda39556.js"><link rel="prefetch" href="/assets/js/519.85b42de5.js"><link rel="prefetch" href="/assets/js/52.22a7da62.js"><link rel="prefetch" href="/assets/js/520.8b531775.js"><link rel="prefetch" href="/assets/js/521.8e4b66fb.js"><link rel="prefetch" href="/assets/js/522.050bfc55.js"><link rel="prefetch" href="/assets/js/523.e973f1e0.js"><link rel="prefetch" href="/assets/js/524.fd160738.js"><link rel="prefetch" href="/assets/js/525.5a4bc307.js"><link rel="prefetch" href="/assets/js/526.361bc4fa.js"><link rel="prefetch" href="/assets/js/527.06ee9d73.js"><link rel="prefetch" href="/assets/js/528.22d9b118.js"><link rel="prefetch" href="/assets/js/529.b7592c16.js"><link rel="prefetch" href="/assets/js/53.767f3bbf.js"><link rel="prefetch" href="/assets/js/530.ad96d564.js"><link rel="prefetch" href="/assets/js/531.61905243.js"><link rel="prefetch" href="/assets/js/532.11aebf61.js"><link rel="prefetch" href="/assets/js/533.0cddb226.js"><link rel="prefetch" href="/assets/js/534.d1c9cc36.js"><link rel="prefetch" href="/assets/js/54.d1f9eec8.js"><link rel="prefetch" href="/assets/js/55.aa90e812.js"><link rel="prefetch" href="/assets/js/56.4d7f81f2.js"><link rel="prefetch" href="/assets/js/57.3c540e8d.js"><link rel="prefetch" href="/assets/js/58.fc1c23f2.js"><link rel="prefetch" href="/assets/js/59.c7a7a4c0.js"><link rel="prefetch" href="/assets/js/6.056886f1.js"><link rel="prefetch" href="/assets/js/60.40e590ae.js"><link rel="prefetch" href="/assets/js/61.e400b323.js"><link rel="prefetch" href="/assets/js/62.bbb30ef1.js"><link rel="prefetch" href="/assets/js/63.c31cd2bb.js"><link rel="prefetch" href="/assets/js/64.62321188.js"><link rel="prefetch" href="/assets/js/65.44adc2b3.js"><link rel="prefetch" href="/assets/js/66.b5740d4f.js"><link rel="prefetch" href="/assets/js/67.76c3624c.js"><link rel="prefetch" href="/assets/js/68.6dd982d4.js"><link rel="prefetch" href="/assets/js/69.eb1390ec.js"><link rel="prefetch" href="/assets/js/7.a96cecf9.js"><link rel="prefetch" href="/assets/js/70.8c882bdd.js"><link rel="prefetch" href="/assets/js/71.001c968a.js"><link rel="prefetch" href="/assets/js/72.ae4ca075.js"><link rel="prefetch" href="/assets/js/73.d6ae6a27.js"><link rel="prefetch" href="/assets/js/74.fba60e37.js"><link rel="prefetch" href="/assets/js/75.0b1bf7bf.js"><link rel="prefetch" href="/assets/js/76.ee19d90e.js"><link rel="prefetch" href="/assets/js/77.fe8ac5f0.js"><link rel="prefetch" href="/assets/js/78.ae09432e.js"><link rel="prefetch" href="/assets/js/79.c1b10e2d.js"><link rel="prefetch" href="/assets/js/80.ae809538.js"><link rel="prefetch" href="/assets/js/81.ca11b4c7.js"><link rel="prefetch" href="/assets/js/82.308b98e4.js"><link rel="prefetch" href="/assets/js/83.355d9dde.js"><link rel="prefetch" href="/assets/js/84.a2b61d48.js"><link rel="prefetch" href="/assets/js/85.cf992fda.js"><link rel="prefetch" href="/assets/js/86.f547c7ea.js"><link rel="prefetch" href="/assets/js/87.2b02746a.js"><link rel="prefetch" href="/assets/js/88.e939aad5.js"><link rel="prefetch" href="/assets/js/89.b000c42a.js"><link rel="prefetch" href="/assets/js/90.dadef001.js"><link rel="prefetch" href="/assets/js/91.c0fe2e32.js"><link rel="prefetch" href="/assets/js/92.e09650b9.js"><link rel="prefetch" href="/assets/js/93.427c7280.js"><link rel="prefetch" href="/assets/js/94.90fc5f58.js"><link rel="prefetch" href="/assets/js/95.13d42b3a.js"><link rel="prefetch" href="/assets/js/96.d0a2ea8c.js"><link rel="prefetch" href="/assets/js/97.cc9a0eda.js"><link rel="prefetch" href="/assets/js/98.3c9f1b7e.js"><link rel="prefetch" href="/assets/js/99.0420dcbc.js"><link rel="prefetch" href="/assets/js/vendors~docsearch.33b2b47d.js">
    <link rel="stylesheet" href="/assets/css/0.styles.40c15e22.css">
  </head>
  <body>
    <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/logo.png" alt="鱼皮的编程宝典" class="logo"> <span class="site-name can-hide">鱼皮的编程宝典</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/学习路线/" class="nav-link">
  学习路线
</a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="自学之路" class="dropdown-title"><span class="title">自学之路</span> <span class="arrow down"></span></button> <button type="button" aria-label="自学之路" class="mobile-dropdown-title"><span class="title">自学之路</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/自学之路/#大学经历" class="nav-link">
  大学经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#求职经历" class="nav-link">
  求职经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#职场工作" class="nav-link">
  职场工作
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#创作经历" class="nav-link">
  创作经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#创业经历" class="nav-link">
  创业经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#生活日常" class="nav-link">
  生活日常
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="编程分享" class="dropdown-title"><span class="title">编程分享</span> <span class="arrow down"></span></button> <button type="button" aria-label="编程分享" class="mobile-dropdown-title"><span class="title">编程分享</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/编程分享/#入门必看-学习路线" class="nav-link">
  入门必看-学习路线
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#学习指南" class="nav-link">
  学习指南
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#开发经验" class="nav-link">
  开发经验
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#求职经验" class="nav-link">
  求职经验
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#职场经验" class="nav-link">
  职场经验
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#技术分享" class="nav-link">
  技术分享
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#实战教程" class="nav-link">
  实战教程
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#其他" class="nav-link">
  其他
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#📚-项目教程" class="nav-link">
  项目教程
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#个人作品" class="nav-link">
  个人作品
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#🎁-编程资源" class="nav-link">
  编程资源
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#🌐-科技科普" class="nav-link">
  科技科普
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="项目实战" class="dropdown-title"><span class="title">项目实战</span> <span class="arrow down"></span></button> <button type="button" aria-label="项目实战" class="mobile-dropdown-title"><span class="title">项目实战</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/项目实战/OJ 判题系统.html" class="nav-link">
  OJ 判题系统
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/智能 BI 平台.html" class="nav-link">
  智能 BI 平台
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/聚合搜索平台.html" class="nav-link">
  聚合搜索平台
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/API 开放平台.html" class="nav-link">
  API 开放平台
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/伙伴匹配系统.html" class="nav-link">
  伙伴匹配系统
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/用户中心项目.html" class="nav-link">
  用户中心项目
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/Java 后端万用项目模板.html" class="nav-link">
  Java 后端万用项目模板
</a></li></ul></div></div><div class="nav-item"><a href="/知识碎片/" class="nav-link">
  知识碎片
</a></div><div class="nav-item"><a href="/编程导航/" class="nav-link">
  🔥 编程导航
</a></div><div class="nav-item"><a href="/产品服务/" class="nav-link">
  产品服务
</a></div><div class="nav-item"><a href="/作者/" class="nav-link">
  作者
</a></div> <a href="https://github.com/liyupi/codefather" target="_blank" rel="noopener noreferrer" class="repo-link">
    GitHub
    <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/学习路线/" class="nav-link">
  学习路线
</a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="自学之路" class="dropdown-title"><span class="title">自学之路</span> <span class="arrow down"></span></button> <button type="button" aria-label="自学之路" class="mobile-dropdown-title"><span class="title">自学之路</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/自学之路/#大学经历" class="nav-link">
  大学经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#求职经历" class="nav-link">
  求职经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#职场工作" class="nav-link">
  职场工作
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#创作经历" class="nav-link">
  创作经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#创业经历" class="nav-link">
  创业经历
</a></li><li class="dropdown-item"><!----> <a href="/自学之路/#生活日常" class="nav-link">
  生活日常
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="编程分享" class="dropdown-title"><span class="title">编程分享</span> <span class="arrow down"></span></button> <button type="button" aria-label="编程分享" class="mobile-dropdown-title"><span class="title">编程分享</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/编程分享/#入门必看-学习路线" class="nav-link">
  入门必看-学习路线
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#学习指南" class="nav-link">
  学习指南
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#开发经验" class="nav-link">
  开发经验
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#求职经验" class="nav-link">
  求职经验
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#职场经验" class="nav-link">
  职场经验
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#技术分享" class="nav-link">
  技术分享
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#实战教程" class="nav-link">
  实战教程
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#其他" class="nav-link">
  其他
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#📚-项目教程" class="nav-link">
  项目教程
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#个人作品" class="nav-link">
  个人作品
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#🎁-编程资源" class="nav-link">
  编程资源
</a></li><li class="dropdown-item"><!----> <a href="/编程分享/#🌐-科技科普" class="nav-link">
  科技科普
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="项目实战" class="dropdown-title"><span class="title">项目实战</span> <span class="arrow down"></span></button> <button type="button" aria-label="项目实战" class="mobile-dropdown-title"><span class="title">项目实战</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/项目实战/OJ 判题系统.html" class="nav-link">
  OJ 判题系统
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/智能 BI 平台.html" class="nav-link">
  智能 BI 平台
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/聚合搜索平台.html" class="nav-link">
  聚合搜索平台
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/API 开放平台.html" class="nav-link">
  API 开放平台
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/伙伴匹配系统.html" class="nav-link">
  伙伴匹配系统
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/用户中心项目.html" class="nav-link">
  用户中心项目
</a></li><li class="dropdown-item"><!----> <a href="/项目实战/Java 后端万用项目模板.html" class="nav-link">
  Java 后端万用项目模板
</a></li></ul></div></div><div class="nav-item"><a href="/知识碎片/" class="nav-link">
  知识碎片
</a></div><div class="nav-item"><a href="/编程导航/" class="nav-link">
  🔥 编程导航
</a></div><div class="nav-item"><a href="/产品服务/" class="nav-link">
  产品服务
</a></div><div class="nav-item"><a href="/作者/" class="nav-link">
  作者
</a></div> <a href="https://github.com/liyupi/codefather" target="_blank" rel="noopener noreferrer" class="repo-link">
    GitHub
    <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav>  <ul class="sidebar-links"><li><a href="/%E8%87%AA%E5%AD%A6%E4%B9%8B%E8%B7%AF/" class="sidebar-link">鱼皮的编程学习之路</a></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading open"><span>大学经历</span> <span class="arrow down"></span></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/" aria-current="page" class="active sidebar-link">我学计算机的四年，共勉！</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#我的大学四年" class="sidebar-link">我的大学四年</a></li></ul></li><li><a href="/%E4%BB%8E%E5%A4%A7%E5%AD%A6%E5%88%B0%E7%A7%8B%E6%8B%9B-%E6%88%91%E5%A6%82%E4%BD%95%E6%8B%BF%E4%B8%8B%E8%85%BE%E8%AE%AFoffer/" class="sidebar-link">从大学到秋招，我如何拿下腾讯offer</a></li><li><a href="/%E5%A4%A7%E5%AD%A6-%E6%88%91%E6%98%AF%E6%80%8E%E4%B9%88%E8%BE%B9%E5%AD%A6%E7%BC%96%E7%A8%8B%E8%BE%B9%E8%B5%9A%E9%92%B1%E7%9A%84/" class="sidebar-link">大学，我是怎么边学编程边赚钱的？</a></li><li><a href="/%E6%88%91%E5%A4%A7%E4%B8%89%E6%97%B6%E5%81%9A%E7%9A%84%E7%BE%9E%E8%80%BB%E9%A1%B9%E7%9B%AE/" class="sidebar-link">我大三时做的羞耻项目！</a></li><li><a href="/%E9%B1%BC%E7%9A%AE%E7%9A%84%E8%80%83%E8%AF%81%E7%BB%8F%E5%8E%86/" class="sidebar-link">鱼皮的考证经历</a></li><li><a href="/%E9%B1%BC%E7%9A%AE%E5%9C%A8%E5%AE%9E%E9%AA%8C%E5%AE%A4%E5%87%BA%E7%89%88%E6%95%99%E6%9D%90%E7%9A%84%E7%BB%8F%E5%8E%86/" class="sidebar-link">鱼皮在实验室出版教材的经历</a></li><li><a href="/%E9%B1%BC%E7%9A%AE%E7%9A%84%E6%AF%95%E4%B8%9A%E8%AE%BE%E8%AE%A1-%E6%97%B6%E9%9A%94%E4%B8%80%E5%B9%B4-%E4%BB%8D%E6%84%9F%E8%A7%89%E5%A4%B4%E7%A7%83/" class="sidebar-link">鱼皮的毕业设计，时隔一年，仍感觉头秃</a></li><li><a href="/%E9%B1%BC%E7%9A%AE%E7%9A%84%E6%AF%95%E4%B8%9A%E6%84%9F%E5%8F%97/" class="sidebar-link">鱼皮的毕业感受</a></li><li><a href="/%E9%B1%BC%E7%9A%AE%E8%90%BD%E6%88%B7%E4%B8%8A%E6%B5%B7%E5%BF%83%E5%BE%97/" class="sidebar-link">鱼皮落户上海心得</a></li></ul></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>求职经历</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>职场工作</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>创作经历</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>创业经历</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>生活日常</span> <span class="arrow right"></span></p> <!----></section></li></ul> </aside> <main class="page"> <div class="content"><div style="width:100%"><div class="theme-default-content custom-content content__default"><h1 id="我学计算机的四年-共勉"><a href="#我学计算机的四年-共勉" class="header-anchor">#</a> 我学计算机的四年，共勉！</h1> <blockquote><p>本文作者：<a href="https://yuyuanweb.feishu.cn/wiki/Abldw5WkjidySxkKxU2cQdAtnah" target="_blank" rel="noopener noreferrer">程序员鱼皮<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></p> <p>本站地址：<a href="https://codefather.cn" target="_blank" rel="noopener noreferrer">https://codefather.cn<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></p></blockquote> <p>大家好，我是鱼皮。</p> <p>前几天在某乎上看到一个问题：大学计算机系最努力的同学都是如何学习的？</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502417.png" loading="lazy" class="lazy"></p> <p>看了几个高赞回答后，真的是感同身受，也想和大家分享一下自己大学的学习经历，算是给自己一个继续前行的动力吧。</p> <p><strong>与君共勉！</strong></p> <h2 id="我的大学四年"><a href="#我的大学四年" class="header-anchor">#</a> 我的大学四年</h2> <p><strong>论努力，我不会输给任何人。</strong></p> <p>认识我的朋友都知道，即使目前在鹅厂的高压下工作，我也依然坚持利用午休和下班后的时间创作，每晚都是接近 2 点才上床休息。</p> <p>朋友们总劝我，你别肝了，我说：大学的时候，可比这累多了。</p> <p><strong>下面分享一下我通过自学，最终拿到大厂 offer 的故事。</strong></p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502441.jpeg" loading="lazy" class="lazy"></p> <h3 id="前言"><a href="#前言" class="header-anchor">#</a> 前言</h3> <p>我是上海一所 211 学校的本科生，网络工程专业，虽然学校不算太差，但在各种 985 面前，是没有竞争力的，只能说学历不拖后腿。</p> <p>我从小就对计算机很感兴趣（主要是喜欢打游戏），由于高考时失利严重，所以在进入大学前，就给自己定下了一定要进大厂的目标，决定要好好努力，不输其他名校的同学，我要证明自己不比他们差。</p> <p>不过现在回想起来，当时确实是年少轻狂啊，也没有想到零基础学习计算机，竟然需要那么漫长的努力。</p> <p>还好，虽然在追求目标时走了一些弯路，但总体还算顺利。</p> <p>下面分享我大学四年的学习和求职经历、方法、技巧经验，在最后精心总结，建议大家收藏，并定期和自己的现状来对比，按照我的经历，每位同学都可以进大厂！</p> <h3 id="大一"><a href="#大一" class="header-anchor">#</a> 大一</h3> <p>其实，我的大一比较滑水，新鲜的事物太多，让我渐渐忘了入学前的目标，忽略了学习的重要性，不过这也应该是大多数同学的真实写照吧。刚入学时我加了很多社团，每天就是和兄弟姐妹们开心滴玩耍，完全不在意自己的成绩。但幸运的是，我加入了一个给学校开发网站的工作室，老大给我布置了一些学习网站开发的任务，因此上学期也学到了一点课本之外的知识，但专业课的成绩着实一般。</p> <p>寒假回家跟名校的朋友交流后，我意识到自己忘记了曾经的目标，于是决定洗心革面，发奋图强。和朋友的交流中，我意识到想要学好编程，仅通过学校的计算机课程是远远不够的。于是，我买了几本书，在大学的第一个寒假，学完了 Java 这门编程语言、数据库理论和 MySQL 数据库的使用。刚开始自学的确比较困难，所以整个寒假 <strong>每天早上 8 点钟爬起来就是学习，一直学到晚上</strong>，那段时间几乎是 <strong>闭门不出</strong>，所以感觉时间过的很快。自己对这个寒假也没有什么深刻的记忆了，有时 <strong>因为一个 bug 熬到半夜</strong> 的郁闷心情。</p> <p>在刚开始学 Java 时，我看书上的例子是看一遍忘一遍，看了半天啥也没学会。于是，我就跟着书本敲代码，把每一个例子，每一行代码都理解、啃头，认真完成课后练习，并且将练习的代码结合自己的想法做了些修改，试着自己开发了一些小软件，比如整人儿程序，打开软件后就会在屏幕上出现无数个关不掉的窗口。自己开发和设计程序的过程是非常爽的，没有课本和作业的束缚，让我渐渐对编程产生了兴趣，也为后面持续努力自主学习埋下了种子。</p> <p>在大一下学期，我首先端正态度，开始认真学习学校的计算机专业课程，希望能得到一个好的成绩。除了学校教的基础课外，我在网站开发工作室中学习了更多网站开发知识，主动承担校园网站建设任务，并且用学到的技术手动为自己开发了个人博客，来记录自己的学习过程。</p> <p>随着前端学习的逐渐深入，我开始好奇前端页面背后的请求逻辑，于是开始自主学习 Java 后端的知识，刚开始接触后端，感觉像是打开了新世界的大门，我意识到， 握草，编程真的是这辈子都学不完啊，然后开始更努力地学习。</p> <p>与此同时，在这学期，我抓住了两个机会，首先是作为队长申报了国家级大学生创新创业项目，这个项目的申报属实不易，我被老师拒绝了好几次，他每拒绝一次，我就重新提一个想法、设计一个方案，最终终于成功抓住了机会，带领团队开发了一个一站式校园信息整合系统。做这个项目的时候，正是课程最繁忙的时候，那段时间，光是做课程 oj，就让我很头疼了，但还好有责任心驱使我前进，每天晚上肝到 2 - 3 点，我也能够将项目做好。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502985.png" loading="lazy" class="lazy"></p> <center><div style="color:#999;display:inline-block;padding:2px;">
      参与创业项目学习
  	</div></center> <p>第二个机会是，我加入了导师的研究生团队一起做项目，机会是靠自己争取的，简单的说就是毛遂自荐，虽然当时我只学了简单的 Spring 后端开发，但我相信自己能够通过爆肝，虽不奢望追上师兄们的步伐，也要不拖大家的后腿，为项目多做贡献。</p> <p>光通过做项目，我就赚到了几万块钱，做到了经济独立，同时也积累了一些经验，在专业课上取得了不错的成绩。</p> <p>当时的我，天真的以为，照这个节奏努力下去，已经足够了。</p> <p>但随着我看到了身边更多优秀的人（比如我表哥，在清华，<strong>大一发论文</strong>，他是我最优秀的榜样），学到了更多的知识，我发现，自己还是太嫩了，那个时候的自己，根本谈不上努力，只是个沉迷学习的傻子。</p> <h3 id="大二"><a href="#大二" class="header-anchor">#</a> 大二</h3> <p>大二这一年，除了担任班长，我还当了学生会部长、社团部长、网站开发工作室的负责人，因此，除了专业课学习外，还有非常非常多其他的事情要处理。但是，不论其他事情要处理到多晚，我都始终坚持每天留给自己几个小时用来自学技术，哪怕熬夜到凌晨三四点，然后第二天 8 点接着醒来上课。课上犯困的时候，我会做一些相对不用动脑的工作，比如记录一些实验课的报告。然后等回了寝室，躺在床上，把电脑放被子上，我便会打起精神，开始自主学习编程。</p> <p>虽然此前我已经学了很多编程语言，但是，从大二开始，我坚定地选择 Java 作为自己的主语言。</p> <p>大二上学期，我几乎每天都是在教学楼、学院楼或是图书馆度过的。为了巩固自己的 Java 基础，我不仅上网看了一套完整的 Java 视频教程，还读了《 Java 核心技术卷》这一经典书籍。为了检验自己的学习成果，我自主报考了国外的 Java 等级认证，特地办了张跨境银行卡来支付报名费，还好通过努力复习，高分通过。Java 基础打扎实后，我开始学习主流的 Java 开发框架、微服务技术等。我的记性比较差，但还好学编程不靠死记硬背，背代码的肯定是比不过自己做项目、多写代码的。因此我学编程知识时有个特点，就是边学、边敲代码做项目，每学完一个技术，我都会独立开发一个项目，比如团队协作系统、CRM 管理系统、校园通讯系统、即时聊天系统等。</p> <p>哦对了，那会儿，之前的网站工作室负责人毕业了，临走时，把工作室托付给了我，当时工作室成员不多，光我自己，就独立做了 5 个以上的网站。在老师的推荐下，我还去给其他学院的老师开发系统，而且那段时间，在上数据结构和算法这门课，我还在研究 ACM 方面的题目，所以有时会忙到连中午吃饭的时间都没有，直接待在其他学院的老师办公室吃盒饭。</p> <p>我会整理自己做过的项目，慢慢地竟也积累了不少，有一些项目改造改造，拿去完成课程大作业，或者参加比赛，都非常不错。</p> <p>我也经常在自己写作的地方分享自己做过的项目和经验，欢迎大家看一下。</p> <p>大二寒假，我参加了一个计算机作品竞赛，有幸找到一位很优秀的学长，他做后端，我做前端，我们一起开发了一个大学二手置换平台。在这个过程中，我学到了很多团队开发的技巧，也从学长身上学到了很多编程小姿势。学长校招拿到了阿里的 offer，也是给我带来了不少的鼓励吧。</p> <p>这个寒假，除了开发作品外，我看了一些计算机网络方面的书籍，补充自己的理论知识，基本也是全天都在学习，只有晚上跟朋友出去玩玩桌游，即使在玩时，可能抽空还会想想白天遇到的难题，痛并快乐着吧。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502471.jpeg" loading="lazy" class="lazy"></p> <center><div style="color:#999;display:inline-block;padding:2px;">
      学院楼自习
  	</div></center> <p>通过不断开发作品，我意识到自己的前端网站开发效率好像不太高，于是在大二下学期，我开始学习前端框架 Vue，比 jQuery 更加高效地开发体验带给我极大的学习兴趣，一口气学了一个多月，看完了 2 套 Vue 完整教学视频，并且自己动手写了几个 Vue 完整项目，同时还学到了很多打包工具，自己也实践了他们的配置方式。</p> <p>当时觉得大二暑假好像没什么事做，就计划要不用技术赚点钱吧，因此我没有选择去做兼职，而是想找一份和自己职业目标相关的实习，于是我开始跑到大公司的官网去投递简历，即使简历上什么内容都没有。结果可想而知，像阿里巴巴这种一线大厂根本就不鸟我，<strong>朋友们觉得真实么？</strong></p> <p>没办法一次进大厂实习，那就一步一步往上爬吧。那我就在各种求职网站去海投简历，终于有幸在实习僧上收到了几家公司的面试邀约，基本都是要坐几个小时地铁的公司，但肯定也都要去试试吧。当时自己虽然做了不少网站，但由于面试准备不充分，屡战屡败，结果只有一家公司肯要了我，岗位正好是 Java 后端开发。</p> <p>于是那年暑假，我每天早上 6 点就要起床赶高铁去上班，学校在郊区，我要先骑着我的小、小电动车去地铁站，然后坐地铁，换乘 2 次，再走老长一段路，来回四个小时的车程。后来，为了省时间，我发现了一条更精妙的路线，公司在高铁站附近，那我干脆就坐高铁去！于是，每天可以节省近一个小时的时间来学习。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502407.jpeg" loading="lazy" class="lazy"></p> <center><div style="color:#999;display:inline-block;padding:2px;">
      实习的地方夜景
  	</div></center> <p>当然，在车上的时间我并没有浪费，而是利用这些零碎时间用手机刷 Java 等知识的练习题、看其他同学的面经、或者阅读公众号上的技术文章。我给自己定了一个每日任务，每天读 4 篇文章，刷 30 道牛客 Java 题目，经过两个月的时间，题目刷通了两遍，也学到了很多技术知识。</p> <p>那段时间，我白天在公司上班，晚上还要回到学校去接着跟老师做项目或者自主学习，弥补面试时发现的自身的不足。</p> <p>即使在工作中没什么活的时候，我也会刷算法题，带薪刷算法题，绝对不让自己闲下来，因为我怕我一放松，就会懈怠。等我走的那天，刷了估计也有几十题了。不过有一说一，那会儿网上的算法教程和经验分享都不多，所以我也走了很多弯路吧。给大家整理了一些学算法的资源，希望大家不要像我刚开始一样，随缘刷题，低效又无趣。</p> <p>还好，整个实习真的非常愉快，虽然只有两个月，但我真的收获爆表。</p> <p>学到了很多技术和业务知识，开拓了眼界，也明确了我今后的职业发展方向；学会了团队沟通和协作，懂得了诚信的重要，也收获了人脉。当然，最重要的是收获了人生一段难忘的回忆。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502746.png" loading="lazy" class="lazy"></p> <center><div style="color:#999;display:inline-block;padding:2px;">
     当时的工位
  	</div></center> <p>这也是为啥我建议大家在学了一些技术后，<strong>趁早去找一份实习</strong>，不用担心自己的经验不足，通过面试和企业工作的磨练才能让你积累更多的经验和技术，也能帮助你明确自己的目标。</p> <p>不过遗憾的是，到最后也没赚多少钱，饭钱自己掏，高铁费齁贵，哈哈。</p> <p>在今年，为了解决学了就忘的问题，我开始使用一种新的学习方法 —— 费曼学习法。每次学到一些知识，我会尝试用自己的方式进行复述，并和其他同学进行分享。只有能清晰地讲述所学知识，并让他人能够理解，才算是真正学会了。用这种方法，我不仅加深了对知识的印象，语言表达能力也得到了很大的提升，还有了更多给学院同学分享的机会，开过几场讲座，而这些都对我今后的面试非常有帮助！</p> <p>让我欣慰的是，自主学习课外技术竟也帮助我理解了一些学校的课程，因为很多理论知识之间是有关联的吧，所以今年的成绩还算不错，拿到了国家奖学金。我用奖学金的钱，再加上之前做项目的钱，买了配置更高的电脑和设备，激励自己学习。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021933500.png" loading="lazy" class="lazy"></p> <center><div style="color:#999;display:inline-block;padding:2px;">
     自己赚钱买的电脑
  	</div></center> <h3 id="大三"><a href="#大三" class="header-anchor">#</a> 大三</h3> <p>在之前的几次面试失利中，我感觉自己的编程知识是缺斤少两的。一方面我要学习更多且更深层的后端知识，不能仅停留于 “会用”，而是要 “活用”。因此在大三这一年，我又学了像消息队列、搜索引擎等企业后端必备的技术，以及 MySQL 优化、虚拟机调优、Redis 底层，并且通过阅读源码，自己搞了一些框架。另一方面，我意识到了数据结构和算法的重要性，开始刷算法题目，每天早上花 2 - 3 个小时搞几道题，坚持了近一年，总共搞了 1000 道题吧，也顺便考了一些算法类证书。</p> <p>学的技术越多，我越发现啊，学编程还真是得靠敲的！光说不练假把式，其实很多视频教程中的小 Demo 都蛮不错的，要注重积累，并试着将重复的代码进行抽象，避免重复造轮子。很多技术都是因为有实际应用需求，才被人创造，才需要你去学习，比如你要做一个支持用户登录的 APP，你就要学习登录机制；要做即时通讯，你就要了解 RTC、Socket；性能低了，你就要去优化；担心网站被黑了，你就要做安全措施；懒得写重复代码，你就要学低代码、大前端等等。</p> <p>直到现在，我依然是一名兴趣驱动型 coder，会经常带着小伙伴们一起做一些好玩轻松的项目，提升兴趣的同时学到不少编程小技巧，欢迎朋友们来看看。</p> <p>正因为明白兴趣和实践的重要性，所以我大三一整年都沉迷于做项目、找实习、参加竞赛，乐此不疲。</p> <p>上学期先是在实验室跟着老师研究区块链技术，不得不说，实验室的环境更适合学习，从早上起床就来实验室，直到晚上十点多甚至是十一点才走，感觉真是很充实！几个月过去，终于开发出了落地应用并出版了一本教材（个人编写占比超过 50%），也是这段时间的研究让我浮躁的内心渐渐变得平静。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502387.png" loading="lazy" class="lazy"></p> <p>在寒假前我向字节跳动投递了简历，在一份实习经历和坚持刷算法题的加成下，我很顺利地成功通过了面试，开始了日常实习生活，在不敲任何一节课的情况下，每周上班 3 ~ 4 天。（好奇为啥没翘课还能一周上这么多天班么？后面详细给大家分享，欢迎关注我呀！）</p> <p>实习部门是个新部门，地铁每趟要近 2 个小时。虽然使用的是自己不太擅长的 Php 和 Go，但学习起来很容易，导师和上级非常好，给我绝对的发挥空间，从入职起就参与项目的需求评审，甚至后来是自己一个人负责了一个项目的后端，和其他部门的同事打交道也非常多，成长非常非常非常快！而且字节跳动的待遇真的没话说，全员 Macbook +免费三餐零食下午茶。</p> <p>后来快离职了，导师和上级也没给我安排什么任务，除了解决下之前写的 Bug 外，我不会闲着，有空就坚持刷算法，LeetCode、交大 OJ、浙大 OJ、牛客、PAT、北大 OJ，我都刷了几十道题，其中 LeetCode 刷了 600 多道！顺带一提，在来回四个小时的车程中我依然会看技术文章、背单词、看面经、或者刷刷面试题目。不得不说，字节跳动真的是一家很好的公司，他的价值观（字节范儿）也带给了我很大的激励吧，共勉。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502690.jpeg" loading="lazy" class="lazy">字节范儿（当年是 5 条）</p> <p>实习四个月后，我跑路了，原因是自己还在纠结到底是保研还是就业，不妨两者都试试，到时候再选择一个更优解。所以回到学校后，为了丰富简历、给上海落户凑一些积分，我参与了一些大型竞赛，像挑战杯、互联网+、三创赛，在所有团队成员共同努力并让我抱大腿的情况下，也获得了一些奖项。</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502630.png" loading="lazy" class="lazy"></p> <p>后来，某天在校溜达时，我突然收到了腾讯的电话面试邀请，总共只有两轮面试，都是些后端问题，还好我每天都在看面试题，有备而来，所以答得还行，也就顺利搞到了暑期实习的 offer。</p> <p>大三这一年，我专门搞新技术的时间并不多，但是通过不断做项目、刷算法、不断发现和解决问题，我的基础和技术能力都有了很大的进步。有了更多的知识积累，在学新技术时，我可以将一些新知识和以前的知识对照和串联，从而理解的飞快！比如学过前端 Vue 框架后，再学习 React 框架就轻而易举，我的技术栈也越来越丰富了。</p> <h3 id="大四"><a href="#大四" class="header-anchor">#</a> 大四</h3> <p>大三暑假，我开始了在腾讯的实习生活，刚开始还是挺不适应的，总是在简单的工作上翻车，但后来多花了些时间学习，也渐渐能独立完成工作了。后来，我在实习转正答辩中取得了同组第一的成绩，顺利搞到了不错的 offer，并成功签约。不知道小伙伴们是否需要我出一期实习转正的视频呢？</p> <p>整个大四，我基本都在腾讯实习，每天依然是坐地铁往返学校和公司，在路上坚持学习。疫情期间，我就在家里远程实习，下班的时间除了做毕业设计、写论文之外，我还独立开发和上线了一个完整的小程序【面试君主】。</p> <p>等毕业证搞到手，我已经在腾讯实习了近一年，后面的转正也都非常自然。</p> <p>不过转正之后，激动的同时，身上的责任和压力也大了许多。想了解我转正经历的朋友，请点赞后在评论区告诉我吧，让我知道有人看了几千个字后，来到了这里~</p> <hr> <p>这就是我的大学生活，一段平凡的奋斗史。</p> <p>当然，想要进大厂，只靠努力还是不够的（但不能不努力），我认为进大厂还需要以下要点：</p> <ol><li>兴趣，学自己喜欢的，这是你前进的主要动力</li> <li>目标，有目标才有规划，才能避免像我一样走了弯路浪费了些时间</li> <li>自学，只有持续自学，你才能看到更大的世界。其实现在网上好的学习资源非常多，为了帮助大家发现优质编程资源，我花了 200 个小时开发了编程导航，还整理了免费编程资源大全。</li> <li>实践，纸上得来终觉浅，对编程来说更是如此，必须要多加练习</li> <li>机会，在我的故事中看似有很多的幸运，但其实每一个机会都是要自己争取来的，你变强了，更多机会和幸运才会眷顾你。而每个机会都可能会改变你的命运。</li> <li>突破，打破自己的舒适圈，这样才能给自己多一点选择，多一点成功的可能性。</li> <li>时间，珍惜你大学的时间，这段时间的努力会在未来，给你带来更大的价值</li> <li>生活，保持健康规律的生活，不要像我一样因为常年熬夜，记性越来越差，头发掉的越来越快。</li></ol> <p><strong>最后再给在校的同学们一些建议。</strong></p> <h3 id="建议"><a href="#建议" class="header-anchor">#</a> 建议</h3> <p>给目标直接就业同学的建议：如果时间还多，那么就按照自己的节奏和兴趣去学习技术并实践，心无旁骛。你要知道研究生也才多一年多的做项目和研究时间，如果本科你把别人准备考研的一年用于学习技术，那么技术实力完全不输于研究生！</p> <p>给考研同学的建议：提前了解目标院校考察的专业课，并在该门课初学时就多下功夫。所有的实践课要好好学，平时有空也多上牛客等平台认识更多的朋友，了解找工作常用技术和其他同学的情况，避免考研失败后春招完全小白。</p> <p>给保研同学的建议：如果 <strong>一心决定读研</strong>，担心保不到好的学校，也可以准备下考研，顺便也能复习到一些面试知识。</p> <p>总之，给自己 <strong>多一个选择，多一条后路</strong>。</p> <hr> <p>我的座右铭：<strong>相信自己有能力，那么你就真的会有！</strong></p> <p>希望这句话可以鼓舞到更多的同学吧。</p> <p>另外，很多同学对知识博主的生活可能比较好奇，我是怎么做到 <strong>连续日更不中断</strong>、同时维护两个公众号、又做视频、又写文章、又做直播，又能作为项目主负责人，和小伙伴们一起持续开发自己的网站【编程导航】的呢？</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502779.png" loading="lazy" class="lazy"></p> <p>我工作之后的日常，可以看这篇文章：<a href="http://mp.weixin.qq.com/s?__biz=MzI1NDczNTAwMA==&amp;mid=2247493379&amp;idx=1&amp;sn=2dd40dac552b3415438b77404d3da082&amp;chksm=e9c200f4deb589e217d24726c480f944c54df667a300ac7c096c765fbfa8e871f6d2f42f2bbb&amp;scene=21#wechat_redirect" target="_blank" rel="noopener noreferrer">聊聊最近的生活<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></p> <p><strong>因为热爱，所以坚持！</strong></p> <p>一起加油吧！</p> <p><img alt="" data-src="https://pic.yupi.icu/5563/202311021502808.png" loading="lazy" class="lazy"></p></div> <footer class="page-edit" style="margin:0;"><div class="edit-link"><a href="https://github.com/liyupi/codefather/edit/master/自学之路/大学经历/我学计算机的四年，共勉！.md" target="_blank" rel="noopener noreferrer">完善页面</a> <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></div> <div class="last-updated"><span class="prefix">最近更新:</span> <span class="time">11/11/2023, 8:17:47 PM</span></div></footer> <!----></div> <div class="toc-container-sidebar"><div class="pos-box"><div class="icon-arrow"></div> <div class="scroll-box" style="max-height:86vh"><div style="font-weight:bold;">我学计算机的四年，共勉！</div> <hr> <div class="toc-box"><ul class="toc-sidebar-links"><li><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#我的大学四年" class="toc-sidebar-link">我的大学四年</a><ul class="toc-sidebar-sub-headers"><li class="toc-sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#前言" class="toc-sidebar-link">前言</a></li><li class="toc-sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#大一" class="toc-sidebar-link">大一</a></li><li class="toc-sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#大二" class="toc-sidebar-link">大二</a></li><li class="toc-sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#大三" class="toc-sidebar-link">大三</a></li><li class="toc-sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#大四" class="toc-sidebar-link">大四</a></li><li class="toc-sidebar-sub-header"><a href="/%E6%88%91%E5%AD%A6%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E5%9B%9B%E5%B9%B4-%E5%85%B1%E5%8B%89/#建议" class="toc-sidebar-link">建议</a></li></ul></li></ul></div></div></div></div></div>  <main class="footer"> <div class="copy-right"><span class="name"> 编程导航   |     </span> <a target="_blank" rel="noreferrer">
          
        </a></div></main></main> <aside class="page-sidebar"> <div class="page-side-toolbar"></div>  </aside></div><div class="global-ui"><!----></div></div>
    <script src="/assets/js/app.12ab4756.js" defer></script><script src="/assets/js/2.fd06b53e.js" defer></script><script src="/assets/js/490.3fd65d85.js" defer></script>
  </body>
</html>
